iT邦幫忙

2024 iThome 鐵人賽

DAY 6
0

上一篇題到了函數宣告
這篇則來談談如何寫出可讀性高且好維護的函數的技巧

在 function 中的 return 關鍵字除了回傳結果以外,它同時還會有另外一個功能:
停止函數的執行,只要是在 return 後面的程式皆不會被執行

  • Early Return

這是一個小技巧可以幫助提升程式碼的可讀性
當設計多條件判斷的邏輯時,讓程式碼盡早的完成任務並中止函數,節省不必要的運算,也避免過多的 if...else... 巢狀條件導致閱讀上的困難

function handleData(data) {
  if (data.length == 0) {
    return "Empty data"  // Early return
  }
  
  // 當有資料的時候做整理後回傳結果
  return result
}
  • 單一功能原則

是物件導向設計五原則 SOLID 中的一項,指的是每個函數應該只負責一項特定的任務,換句話說就是盡可能的保持「單純」,不要在一個函數中處理太多任務,這樣的設計能讓程式碼更容易維護和測試

以下列程式碼為例:
若是要改變密碼的驗證邏輯,只需針對 validatePassword 函數去做修改,其餘程式皆不需調整

// 驗證 Email
function validateEmail(email) {
  // 略
}

// 驗證密碼
function validatePassword(password) {
  // 略
}

// 註冊
function Register(user) {
  if (!validateEmail(user.email)) {
    // 略
  }
	
  if (!validatePassword(user.password)) {
    // 略
  }
}

上一篇
Day 5 - JavaScript:函數宣告
下一篇
Day 7 - JavaScript:高階函數
系列文
從零開始 - 30 天學習筆記12
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言